package com.ruoyi.service;

import java.util.List;
import com.ruoyi.domain.Page;
import com.ruoyi.domain.UserPages;

/**
 * 页面组件Service接口
 * 
 * @author ruoyi
 * @date 2025-06-14
 */
public interface IPageService 
{
    /**
     * 查询页面组件
     * 
     * @param pageId 页面组件主键
     * @return 页面组件
     */
    public Page selectPageByPageId(Long pageId);

    /**
     * 查询页面组件列表
     * 
     * @param page 页面组件
     * @return 页面组件集合
     */
    public List<Page> selectPageList(Page page);

    /**
     * 新增页面组件
     * 
     * @param page 页面组件
     * @return 结果
     */
    public int insertPage(Page page);

    /**
     * 修改页面组件
     * 
     * @param page 页面组件
     * @return 结果
     */
    public int updatePage(Page page);

    /**
     * 批量删除页面组件
     * 
     * @param pageIds 需要删除的页面组件主键集合
     * @return 结果
     */
    public int deletePageByPageIds(Long[] pageIds);

    /**
     * 删除页面组件信息
     * 
     * @param pageId 页面组件主键
     * @return 结果
     */
    public int deletePageByPageId(Long pageId);

    List<UserPages> selectUserPages(Page page, Long userId);

    void updateUserPage(Long userId, Long pageId, Integer status);

    List<Page> getUserPageList();
}
